It is very strict with delay requirement for bearing a real-time service in a packet domain in wireless communication. The delay is typically limited within a range from 80 to 150 ms for transmission of a data packet of a real-time voice service via an air interface and limited to approximately 300 ms for transmission of a data packet of a real-time video service via an air interface.
A transmission delay experienced by a data packet via an air interface generally includes two parts, i.e. a wait delay in a buffer of a transmitter side and a transmission delay during transmission. The wait delay generally depends upon a system congestion condition, and the transmission delay depends upon a transmitting capacity of an air interface channel and a capacity of a receiver side to process the received data packet, that is, the transmission delay includes a period of time required for transmission, reception, feedback and corresponding processing of the data packet.
Since it is very strict with delay requirement for a real-time service, if a data packet is subject to an excessively long wait delay in the buffer of the transmitter side, then the data packet may not contribute to a quality of service even though it is subsequently transmitted and correctly received, and on the contrary, a valuable resource of the air interface may be wasted, thus resulting in an increased wait delay of a subsequent data packet. In order to address this issue, a discard timer is provided at the transmitter side, and such a data packet that waits in the buffer of the transmitter side for a delay exceeding a packet discard threshold (i.e., the maximum wait delay) preset by the discard timer is discarded, to improve the efficiency of transmission via the resource of the air interface and reduce a wait delay of a subsequent data packet. The presetting of the packet discard threshold is of a significant influence on the packet loss rate and the transmission efficiency of the system, for example, a relatively small preset packet discard threshold may result in a relatively large packet loss rate; and a relatively large preset packet discard threshold may result in degraded transmission efficiency and an increased wait delay of a subsequent data packet. A method for presetting a packet discard threshold in the prior art lies in that: a period of time required for the largest number of transmissions via the air interface is reserved in the total delay of the air interface, that is, the packet discard threshold is determined as the difference between the total delay of the air interface and the period of time required for the largest number of transmissions via the air interface. For example, as illustrated in FIG. 1, Tbudget represents the total delay of the air interface, Ntrans represents the largest number of transmissions of the system, Ttrans represents a period of time for each transmission, and Tthreshold represents the packet discard threshold, accordingly, Tthreshold=Tbudget−Ntrans×Ttrans. A data packet waiting in the buffer for a delay exceeding the packet discard threshold is discarded. Unfortunately in this method, a data packet can only be discarded prior to its first transmission, and the timer for the data packet is reset to zero upon commence of the first transmission.
In view of the above, the packet discard threshold preset in the foregoing method has the following disadvantages.
1. Since the period of time occupied for the largest number of transmissions allowable for the system has to be accommodated, the packet discard threshold may be preset excessively short. However, the majority of data packets can be received correctly prior to reaching the largest number of transmissions in a well designed wireless system. Thus, a relatively short period of time experienced by a data packet in the buffer to wait for a first transmission may cause some data packets that can be received correctly without being subject to the largest number of transmissions to be discarded prematurely, especially in the event of a relatively short total delay of the air interface and a relatively poor quality of the channel, and the packet loss rate at the transmitter side may consequently be increased dramatically, thus degrading greatly the quality of service.
For example, in the case that the total delay of the air interface is denoted as Tbudget, where Tbudget=150 ms, the largest number of transmissions of the system is denoted as Ntrans, where Ntrans=4, a period of time occupied for each round-trip transmission is denoted as TRTT, where TRTT=20 ms, and the packet discard threshold is denoted as Tthreshold, then Tthreshold=150−4×20=70 ms as preset in the foregoing method, that is, a data packet waiting in a buffer of a transmitter for its first transmission for a period of time exceeding 70 ms is to be discarded. Actually, the majority of data packets may be transmitted successfully without being subject to four times of transmissions, and some data packets may be transmitted successfully even during the first transmission, in this case, a data packet is still valid even if it is transmitted for the first time after waiting in the buffer for 150−1×20=130 ms.
2. Presetting of a packet discard threshold is dependent upon the total delay of the air interface, the largest number of transmissions of the system and the period of time occupied for each round-trip transmission, and when these conditions remain unchanged, the same packet discard threshold is to be preset even for data packets of different users or different data packets of the same user. However, channel statuses of users vary, and this method for presetting a packet discard threshold can not enable a data packet to be discarded properly dependent upon a practical condition, thus possibly resulting in a relatively large packet loss rate and a relatively low utilization efficiency of the resource of the air interface.
3. Such a mechanism, in which a monitoring process of whether to discard a data packet is disabled after the first transmission of the data packet and it is assumed that an event of discarding the data packet will not occur during subsequent possible retransmission, may be unreasonable, because channel and system loads and hence a delay due to retransmission vary dynamically. If the sum of an actual transmission delay occupied for the first transmission and retransmission of a data packet and a wait delay occupied for the data packet exceeds the total delay of the air interface, it indicates that subsequent transmission of the data packet is useless and the data packet shall be discarded.